from enum import unique

from myapp.const.base import TEnum


# Defines the internal user name for system operations.
INTERNAL_USER_NAME = '_internal'
# Sets a default password for initial user setup or internal use.
DEFAULT_PASSWORD = 'wair1234!'


# 算法框架枚举
# Defines an enumeration for various user statuses.
@unique
class EnumUserStatus(TEnum):
    # Represents an undefined or unknown user status.
    other = 0
    # Indicates a normal, active user status.
    normal = 1
    # Signifies that the user account is disabled.
    disabled = 2
    # Denotes that the user account has expired.
    expired = 3
    # Represents a user who has unregistered or is no longer active.
    unregister = 4


# Defines an enumeration for different user roles within the system.
@unique
class EnumUserRole(TEnum):
    # Represents a Tenant Administrator role, with privileges over a specific tenant.
    TenantAdmin = 'TenantAdmin'  # 租户管理员
    # Represents a common user role with standard access.
    Common = 'Common'  # 普通用户
    # Represents an Administrator role with elevated system-wide privileges.
    Admin = 'Admin'  # 管理员
    # Represents a Senior user role, typically with more experience or specific permissions.
    Senior = 'Senior'  # 资深用户
    # Represents a VIP user role, indicating a high-priority or premium user.
    Vip = 'Vip'  # 高级用户